Telegram Group & Telegram Channel
How to: внедряем Jetpack Compose в существующий проект

Хотите использовать современный Compose, но проект уже написан на XML-вёрстке? Разберём, как добавить Compose без переписывания всего кода.

1️⃣ Подготовка проекта

Добавьте зависимости в build.gradle:

android {  
buildFeatures {
compose true
}
}
dependencies {
implementation "androidx.compose.ui:ui:1.6.0"
implementation "androidx.compose.material:material:1.6.0"
}


2️⃣ Гибридный подход

Используйте ComposeView в XML-разметке:

<androidx.compose.ui.platform.ComposeView  
android:id="@+id/compose_view"
android:layout_width="match_parent"
android:layout_height="wrap_content" />


И настраивайте из кода:

findViewById<ComposeView>(R.id.compose_view).setContent {  
Text("Это Compose внутри старого XML!")
}


3️⃣ Постепенная миграция

🔘 Начинайте с новых экранов
🔘 Рефакторите простые элементы (кнопки, карточки)
🔘 Используйте Compose для сложных анимаций

4️⃣ Совместная работа View и Compose

Для взаимодействия между частями:

// View → Compose  
composeView.setContent {
MyComposeScreen(onClick = { /* обработка */ })
}

// Compose → View
AndroidView({ TextView(context) }) { view ->
view.text = "Текст из Compose"
}


Уже пробовали мигрировать на Compose? Делитесь опытом в комментариях 💬

🐸 Библиотека мобильного разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/mobileproglib/5916
Create:
Last Update:

How to: внедряем Jetpack Compose в существующий проект

Хотите использовать современный Compose, но проект уже написан на XML-вёрстке? Разберём, как добавить Compose без переписывания всего кода.

1️⃣ Подготовка проекта

Добавьте зависимости в build.gradle:

android {  
buildFeatures {
compose true
}
}
dependencies {
implementation "androidx.compose.ui:ui:1.6.0"
implementation "androidx.compose.material:material:1.6.0"
}


2️⃣ Гибридный подход

Используйте ComposeView в XML-разметке:

<androidx.compose.ui.platform.ComposeView  
android:id="@+id/compose_view"
android:layout_width="match_parent"
android:layout_height="wrap_content" />


И настраивайте из кода:

findViewById<ComposeView>(R.id.compose_view).setContent {  
Text("Это Compose внутри старого XML!")
}


3️⃣ Постепенная миграция

🔘 Начинайте с новых экранов
🔘 Рефакторите простые элементы (кнопки, карточки)
🔘 Используйте Compose для сложных анимаций

4️⃣ Совместная работа View и Compose

Для взаимодействия между частями:

// View → Compose  
composeView.setContent {
MyComposeScreen(onClick = { /* обработка */ })
}

// Compose → View
AndroidView({ TextView(context) }) { view ->
view.text = "Текст из Compose"
}


Уже пробовали мигрировать на Compose? Делитесь опытом в комментариях 💬

🐸 Библиотека мобильного разработчика

#буст

BY Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck




Share with your friend now:
tg-me.com/mobileproglib/5916

View MORE
Open in Telegram


Библиотека мобильного разработчика | Android iOS Swift Retrofit Moshi Chuck Telegram | DID YOU KNOW?

Date: |

The SSE was the first modern stock exchange to open in China, with trading commencing in 1990. It has now grown to become the largest stock exchange in Asia and the third-largest in the world by market capitalization, which stood at RMB 50.6 trillion (US$7.8 trillion) as of September 2021. Stocks (both A-shares and B-shares), bonds, funds, and derivatives are traded on the exchange. The SEE has two trading boards, the Main Board and the Science and Technology Innovation Board, the latter more commonly known as the STAR Market. The Main Board mainly hosts large, well-established Chinese companies and lists both A-shares and B-shares.

Библиотека мобильного разработчика | Android iOS Swift Retrofit Moshi Chuck from hk


Telegram Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck
FROM USA